﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using Migraine.BLL;

namespace Migraine.MyUC.UCHienThi
{
    public partial class ucThemTrieuChung : UserControl
    {
        TrieuChungBUO tcBUO = new TrieuChungBUO();
        NhomTrieuChungBUO ntcBUO = new NhomTrieuChungBUO();
        public ucThemTrieuChung()
        {
            InitializeComponent();

            int numberOfNhomTC = ntcBUO.GetAll().Count();
            string[] list = new string[numberOfNhomTC];
            for (int i = 0; i < numberOfNhomTC; i++)
            {
                list[i] = ntcBUO.GetAll()[i].Ten;
            }
            comboBox1.DataSource = list;

            loadData();
        }

        void loadData()
        {
            dataGridView1.AutoGenerateColumns = false;
            dataGridView1.DataSource = tcBUO.GetAll();
        }

        private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
        {
            int id = Convert.ToInt32(dataGridView1.CurrentRow.Cells[0].Value);
            tbl_TrieuChung trieuchung = tcBUO.GetSingle(id);
            textBox1.Text = trieuchung.TenTC;
            comboBox1.Text = ntcBUO.GetTenNhomTC(Convert.ToInt32(idNhomTC));
        }

        void insertTrieuChung()
        {
            tbl_TrieuChung tbl = new tbl_TrieuChung();
            tbl.idTrieuChung = "1";
            tbl.TenTC = textBox1.Text;
            tbl.idNhomTC = ntcBUO.GetIDFromTenNhomTC(comboBox1.Text);

            if (tcBUO.Insert(tbl))
            {
                MessageBox.Show("Thêm triệu chứng thành công", "Thông báo");

            }
            else
            {
                MessageBox.Show("Thêm triệu chứng thất bại", "Thông báo");
            }
            loadData();
        }
        private void button1_Click(object sender, EventArgs e)
        {
            if (textBox1.Text != "" && comboBox1.Text != "")
            {
                insertTrieuChung();
            }
            else
            {
                MessageBox.Show("Bạn cần phải nhập đầy đủ thông tin triệu chứng cần thêm. Thử lại?");
            }
        }

        void updateTrieuChung()
        {
            try
            {
                int id = Convert.ToInt32(dataGridView1.CurrentRow.Cells[0].Value);
                tbl_TrieuChung obj = tcBUO.GetSingle(id);

                obj.TenTC = textBox1.Text;
                obj.idNhomTC = ntcBUO.GetIDFromTenNhomTC(comboBox1.Text);

                if (tcBUO.Update(id, obj) == true)
                {
                    MessageBox.Show("Cập nhật triệu chứng thành công", "Thông báo");
                }
                else
                {
                    MessageBox.Show("Cập nhật triệu chứng thất bại", "Thông báo");
                }
                loadData();
            }
            catch (Exception)
            {

                MessageBox.Show("Cập nhật triệu chứng thất bại", "Thông báo");
            }
        }

        private void button2_Click(object sender, EventArgs e)
        {
            if ((textBox1.Text != "") && (comboBox1.Text != ""))
            {
                updateTrieuChung();
            }
            else
            {
                MessageBox.Show("Bạn phải điền đầy đủ thông tin triệu chứng cần cập nhật!. Thử lại?", "Thông báo");
            }
        }

        private void button3_Click(object sender, EventArgs e)
        {
            if ((textBox1.Text != "") && (comboBox1.Text != ""))
            {
                updateTrieuChung();
            }
            else
            {
                MessageBox.Show("Bạn phải điền đầy đủ thông tin triệu chứng cần cập nhật!. Thử lại?", "Thông báo");
            }
        }
    }
}
